/********************************************
 * 功能说明: 
 * 模块名称: 
 * 系统名称: 
 * 软件版权: 西安华信智慧数字科技有限公司
 * 系统版本: 1.0.0
 * 开发人员: zhangfb
 * 开发时间: 2019/11/14 16:48
 * 审核人员: 
 * 相关文档: 
 * 修改记录: 修改日期 修改人员 修改说明
 *********************************************/
package com.hyacinth.cloudnote.common.utils;

import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.springframework.util.Assert;

import java.util.StringJoiner;

/**
 * 字符串工具类
 * @author zhangfb
 * @version 1.0.0.1
 * @since 2019/11/14 16:48
 */
@NoArgsConstructor(access = AccessLevel.PRIVATE)
public final class StrUtils {

    /**
     * 按分隔符反转字符串
     * @param origin 源字符串
     * @param delimiter 定界符
     */
    public static String reverseByDelimiter(String origin, String delimiter) {
        Assert.hasText(origin, "source string cannot be empty");
        if (StringUtils.isBlank(delimiter)) {
            return origin;
        }
        StringJoiner joiner = new StringJoiner(delimiter);
        String[] split = origin.split(delimiter);
        for (int i = split.length -1 ; i >= 0; i--) {
            joiner.add(split[i]);
        }
        return joiner.toString();
    }
}
